/*************************************************************************/ /* ** $VER: Desert_Gen2HTML V2.04 (22-Apr-1997) ©1996-1997 Terence Nichols */ /* */ /* This Program Produces a GENDEX file and creates HTML Pages for your */ /* system. It is © Copyright 1996-1997 Terence Nichols and may be freely */ /* distributed as Shareware. It is not and never will be Public Domain. */ /* Persons who register by sending me an Email message will be elegable */ /* to recieve update as and when available. */ /* */ /* Please read the Licence Agreement available online at : */ /* http://www.networx.net.au/~spinne/index.html */ /* */ /*************************************************************************/ /* */ /* DO NOT MODIFY ANYTHING THERE ARE NO USER PARAMETERS LISTED BELOW */ /* */ /*************************************************************************/ Pname='DGen2HTML';Version='2.04';Lic='© 1996-1997';Owner='Terence Nichols';Address='spinne@networx.net.au';Shome='www.networx.net.au/~spinne/';OPTIONS RESULTS;SIGNAL ON BREAK_C;SIGNAL ON IOERR;GendexFile='GENDEX.txt';Metawords='';LF='0A'x;BELL='07'x;ESC='1B'x;VT='0B'x;List.0=0;Dlist.0=0;enum=0;i=0;Mi=0;Dt=0;MAIN:;CALL CHECK;CALL TOOLTYPES;ADDRESS VALUE "SCIONGEN";GETDBNAME;dbname=RESULT;GETDBPATH;dbpath=RESULT;IF RIGHT(dbpath,1) ~='/' THEN Dbpath= Dbpath||'/';CALL WELCOME;CALL MAKEQUICKINDEX;CALL QUICKPAGE;CALL MAINPAGE;CALL TOPPAGE;CALL INTROPAGE;IF Bpages ~=1 THEN CALL PERSONALINDEXPAGE;IF Gdx=1 THEN CALL GENGENDEX;IF Bpages ~=1 THEN CALL CREATEPAGES;IF Bpages=1 THEN CALL BIGPAGES;CALL THANKYOU;IF SHOW('P','VOYAGER') THEN CALL VOYAGERVIEW;EXIT;CHECK:;IF ~SHOW(l,'rexxreqtools.library') THEN;DO;IF ~addlib('rexxreqtools.library',0,-30) THEN;DO;SAY 'Please install the rexxreqtools.library in your libs: directory';END;END;IF ~SHOW(l,'rexxtricks.library') THEN;DO;IF ~addlib('rexxtricks.library',0,-30) THEN;DO;Rtext='Please install the rexxtricks.library in your libs: directory';enum=1;CALL RERROR;END;END;IF ~SHOW('P','SCIONGEN') THEN;DO;SAY BELL;SAY ''ESC'[32m';SAY 'Please'ESC'[33m Start'ESC'[32m Scion'ESC'[31m' Now''LF'';Rtext=Pname Version LF 'Requires SCION to be running';enum=2;CALL RERROR;END;RETURN;MAKEQUICKINDEX:;SAY 'Creating 'Pname Version 'Index';GETTOTALIRN;List.0=RESULT;DO id=1 TO List.0;GETLASTNAME id;Lastname=RESULT;IF Lastname="" THEN Lastname='UNKNOWN';IF WORDS(Lastname)>1 THEN Lastname=TRANSLATE(Lastname,"_"," ");GETFIRSTNAME id;First=RESULT;IF First="" THEN First='Firstname UNKNOWN';List.id=Lastname LEFT(First,3) id;END;a=rxtr_qsort(List,,,,);nl=0;DO id=1 to List.0;idm=id-1;m=RXTR_MATCHPATTERN(WORD(List.id,1),WORD(List.idm,1),'CASE');IF m=0 THEN;DO;nl=nl+1;Nlist.nl=WORD(List.id,1);END;Nlist.0=nl;END;IF Metakey=1 THEN;DO id=1 to Nlist.0;Metawords=Metawords||','||Nlist.id;END;RETURN;QUICKPAGE:;SAY 'Building Quick Index Page';File='qhtml';Idpage='quick.'||Ext;IF ~OPEN(''||File||'',''||GendexPath||''||Idpage||'',W) THEN;DO;Rtext='Cannot Open 'Idpage;enum=3;CALL RERROR;END;htitle=Realname' Genealogy Quick Index';CALL HEADDERTEXT;Mycol='Quick';CALL COLORSET;Ufile='prequick.txt';CALL USERTEXT;Fdata='
';WRITELN(''||File||'',Fdata);DO id=1 to Nlist.0;k=LEFT(Nlist.id,1);Fdata='
'LF''||TRANSLATE(Nlist.id," ","_")||'';WRITELN(''||File||'',Fdata);END;WRITELN(''||File||'','
'LF);Ufile='postquick.txt';CALL USERTEXT;Fdata='
';WRITELN(''||File||'',Fdata);CALL PAGEEND;CLOSE('qhtml');RETURN;MAINPAGE:;SAY 'Building Main Page';File='mhtml';Idpage='index.'||Ext;IF ~OPEN(''||File||'',''||GendexPath||''||Idpage||'',W) THEN;DO;Rtext='UNABLE TO CREATE 'Idpage;enum=4;CALL RERROR;END;htitle=Realname' Genealogy Index';CALL HEADDERTEXT;Fdata=''LF;Fdata=Fdata||''LF;Fdata=Fdata||''LF;Fdata=Fdata||''LF;Fdata=Fdata||''LF;Fdata=Fdata||''LF''LF;Fdata=Fdata||''LF;WRITELN(''||File||'',Fdata);IF Noframes=1 THEN;DO;Mycol="";CALL COLORSET;Fdata='<center><h1><b>'||Realname ' - 'dbname 'Genealogy Index Page</b></h1></center>'LF;Fdata=Fdata||'<hr>'LF'<p></p>'LF'If you are seeing this Index Page your Browser ';Fdata=Fdata||'is not capable of displaying FRAMES. I suggest that you ';Fdata=Fdata||'download a modern FRAMES capable browser. They are ';Fdata=Fdata||'now available for most computer platforms<br>'LF'<p></p>'LF;Fdata=Fdata||'You may still use this online database by starting with ';Fdata=Fdata||'the <a href="quick.'||Ext||'" >QUICK</a> index page ';Fdata=Fdata||'to see the SURNAMES listing.'LF'<p></p>'LF;WRITELN(''||File||'',Fdata);Ufile='noframes.txt';CALL USERTEXT;Ufile='intro.txt';CALL USERTEXT;Ufile='postpage.txt';CALL USERTEXT;END;WRITELN(''||File||'','' LF '
');CALL PAGEEND;CLOSE('mhtml');RETURN;TOPPAGE:;SAY 'Building Top Page';File='thtml';Idpage='top.'||Ext;IF ~OPEN(''||File||'',''||GendexPath||''||Idpage||'',W) THEN;DO;Rtext='UNABLE TO CREATE 'Idpage;enum=5;CALL RERROR;END;htitle=Realname' Genealogy';CALL HEADDERTEXT;Mycol='Top';CALL COLORSET;Fdata='

'||dbname||' Genealogy Pages

'LF;WRITELN(''||File||'',Fdata);CALL PAGEEND;CLOSE('thtml');RETURN;PAGEEND:;Fdata=LF;Fdata=Fdata||'
Created 'Date('N') Time('N') ' For ';Fdata=Fdata||''||Realname||'. 'LF;Fdata=Fdata||'By '||Pname Version||' 'Lic;IF File ~='thtml' THEN;DO;Fdata=Fdata||' From a Scion ©';Fdata=Fdata||' Database.';END;Fdata=Fdata||'.
'LF;WRITELN(''||File||'',Fdata LF'');RETURN;INTROPAGE:;SAY 'Building Introduction Page';File='ihtml';Idpage='main.'||Ext;IF ~OPEN(''||File||'',''||GendexPath||''||Idpage||'',W) THEN;DO;Rtext='UNABLE TO CREATE 'Idpage;enum=6;CALL RERROR;END;htitle=Pname Version ' Introduction';CALL HEADDERTEXT;Mycol='Intro';CALL COLORSET;Fdata='

'||Realname '-' dbname 'Genealogy Pages

';Fdata=Fdata||'
Last updated ' Date() ' by ' Realname '
';WRITELN(''||File||'',Fdata);Ufile='intro.txt';CALL USERTEXT;WRITELN(''||File||'','


');CALL PAGEEND;CLOSE('ihtml');RETURN;USERTEXT:;IF EXISTS(''||GendexPath||Ufile||'') THEN;DO;OPEN('utxt',''||GendexPath||Ufile||'','R');DO UNTIL EOF('utxt');Fdata=READLN('utxt');WRITELN(''||File||'',Fdata);END;END;CLOSE('utxt');Ufile="";RETURN;HEADDERTEXT:;Fdata=''LF''LF''LF;Fdata=Fdata||''LF;Fdata=Fdata||''LF;Fdata=Fdata||''LF;Fdata=Fdata||''LF;IF File='qhtml' THEN Fdata=Fdata||''LF;Fdata=Fdata||''||htitle||'' LF '' LF;WRITELN(''||File||'',Fdata);RETURN;PERSONALINDEXPAGE:;SAY 'Building Personal Index Pages';File='phtml';Idpage='';DO id=1 TO List.0;num=id+1;nmm=id-1;pre=LEFT(List.id,1);tst=LEFT(List.num,1);lsf=WORD(List.id,1);lst=WORD(List.num,1);lpr=WORD(List.nmm,1);irn=WORD(List.id,3);Mdata="";Marry=0;Idpage=pre||'ind.'||Ext;IF ~OPEN(''||File||'',''||GendexPath||''||Idpage||'','A') THEN;DO;IF ~OPEN(''||File||'',''||GendexPath||''||Idpage||'','W') THEN;DO;SAY 'UNABLE TO CREATE 'Idpage;enum=7;CALL RERROR;END;END;IF SEEK(''||File||'',0,'E')=0 THEN;DO;htitle= dbname||' - '||pre||' Index Page';CALL HEADDERTEXT;Mycol='Alpha';CALL COLORSET;Fdata='

'||pre||' - Index Page

'LF;Fdata=Fdata||'
Created '||DATE('N')||' by '||Realname||'
';WRITELN(''||File||'',Fdata);END;GETLASTNAME irn;Last=RESULT;Last=TRANSLATE(Last,"_"," ");IF Last='' THEN Last='UNKNOWN';IF Last ~=lpr THEN WRITELN(''||File||'','
'LF'

'||TRANSLATE(Last," ","_")||'



');GETFIRSTNAME irn;First=RESULT;IF First='' THEN First='First Name UNKNOWN';GETBIRTHDATE irn;Birth=RESULT;IF Birth ~="" THEN Birth='dob: 'Birth;IF Ddate=1 THEN;DO;GETDEATHDATE irn;Death=RESULT;IF Death ~="" THEN Death='dod: 'Death;END;GETNUMMARRY irn;Marry=RESULT;IF Marry>0 THEN;DO mid=0 TO Marry-1;GETMARRIAGE irn mid;fgrn=RESULT;GETSPOUSE fgrn;spn=RESULT;IF spn=irn THEN;DO;GETPRINCIPAL fgrn;spn=RESULT;END;GETLASTNAME spn;lspn=RESULT;GETFIRSTNAME spn;fspn=RESULT;IF Marplace=1 THEN;DO;GETMARRYDATE fgrn;mdate=RESULT;END;ELSE mdate="";Mdata=Mdata||'
'LF'Marriage ' mid+1 ': 'lspn||' ' fspn mdate;END;IF Marry=0 THEN Data=Birth Death;ELSE Data=Birth Mdata;Fdata=''||First||' 'Data'

';WRITELN(''||File||'',Fdata);IF pre ~=tst THEN;DO;WRITELN(''||File||'','

');Ufile='postindex.txt';CALL USERTEXT;Fdata='
';WRITELN(''||File||'',Fdata);CALL PAGEEND;END;CLOSE('phtml');END;RETURN;GENGENDEX:;SAY 'Building Gendex File';File='gi';IF ~OPEN(''||File||'',''||GendexPath||''||Gendexfile||'',W) THEN;DO;Rtext='Unable to Create 'Gendexfile;enum=8;CALL RERROR;END;Fdata='$VER: ' DATE('N') TIME('N') 'File Created by ' Pname Version Lic Realname LF LF;WRITELN('gi',''||Fdata||'');DO Id=1 TO List.0;irn=WORD(List.id,3);Lastname=TRANSLATE(WORD(List.id,1)," ","_");IF Lastname='UNKNOWN' THEN Lastname='';GETFIRSTNAME irn;Firstname=RESULT;GETBIRTHDATE irn;Birthdate=RESULT;IF Birplace=1 THEN;DO;GETBIRTHPLACE irn;Birthplace=RESULT;END;ELSE Birthplace="";IF Ddate=1 THEN;DO;GETDEATHDATE irn;Deathdate=RESULT;END;ELSE Deathdate="";IF Dplace=1 THEN;DO;GETDEATHPLACE irn;Deathplace=RESULT;END;ELSE Deathplace="";IF Bpages ~=1 THEN Fdata='I'||irn||'.'||Ext||'|';ELSE;DO;IF Lastname="" THEN Fdata='Uind.'||Ext||'#'irn'|';ELSE Fdata=LEFT(Lastname,1)||'ind.'||Ext||'#'irn'|';END;Fdata=Fdata||Lastname||'|'||Firstname||' /'||Lastname||'/';Fdata=Fdata||'|'||Birthdate||'|'||Birthplace||'|'||Deathdate;Fdata=Fdata||'|'||Deathplace||'|';WRITELN('gi',Fdata);END;CLOSE('gi');RETURN;CREATEPAGES:;SAY 'Creating Personal Pages';SAY 'This will take some time'LF;DO id=1 TO List.0;File='idhtml';irn=WORD(List.id,3);SAY 'Building Page 'irn||' ';Idpage='I'||irn||'.'||Ext;IF ~OPEN(''||File||'',''||GendexPath||Idpage||'',W) THEN;DO;Rtext='Cannot Create 'Idpage;enum=9;CALL RERROR;END;htitle='Personal Page 'WORD(List.id,3);Mycol='Indi';CALL COLORSET;CALL HEADDERTEXT;GETFIRSTNAME irn;Firstname=RESULT;Lastname=WORD(List.id,1);Lastname=TRANSLATE(Lastname," ","_");IF Lastname='UNKNOWN' THEN Lastname='';Fdata='

'Firstname' '||Lastname||'

'LF;Fdata=Fdata||'
'LF;Fdata=Fdata||'Created 'Date('N') Time('N')' by 'Realname LF;Fdata=Fdata||'
'LF;Fdata=Fdata||'

'||Firstname||' '||Lastname||'


'LF;GETBIRTHDATE irn;Birthdate=RESULT;IF Birthdate ~="" THEN Fdata=Fdata||'Birth Date : 'Birthdate '
'LF;IF Birplace=1 THEN;DO;GETBIRTHPLACE irn;Birthplace=RESULT;IF Birthplace ~="" THEN Fdata=Fdata||'Birth Place : 'Birthplace'
'LF;END;IF Bap=1 THEN;DO;GETBAPTISMDATE irn;Baptism=RESULT;IF Baptism ~="" THEN Fdata=Fdata||'Baptism Date : 'Baptism'
'LF;END;IF Baplace=1 THEN;DO;GETBAPTISMPLACE irn;Baptismplace=RESULT;IF Baptismplace ~="" THEN Fdata=Fdata||'Baptism Place : 'Baptismplace'
'LF;END;IF Ddate=1 THEN;DO;GETDEATHDATE irn;Deathdate=RESULT;IF Deathdate ~="" THEN Fdata=Fdata||'Died : 'Deathdate'
' LF;END;IF Dplace=1 THEN;DO;GETDEATHPLACE irn;Deathplace=RESULT;IF Deathplace ~="" THEN Fdata=Fdata||'Death Place : 'Deathplace'
'LF;END;IF Burdate=1 THEN;DO;GETBURIALDATE irn;Burialdate=RESULT;IF Burialdate ~="" THEN Fdata=Fdata||'Burial Date : 'Burialdate'
'LF;END;IF Burplace=1 THEN;DO;GETBURIALPLACE irn;Burialplace=RESULT;IF Burialplace ~="" THEN Fdata=Fdata||'Burial Place : 'Burialplace'
'LF;END;WRITELN(''||File||'',Fdata);Fdata='
'LF;IF Occ=1 THEN;DO;GETOCCUPATION irn;Occupation=RESULT;IF Occupation ~="" THEN Fdata=Fdata||'Occupation : 'Occupation'
'LF;END;IF Edu=1 THEN;DO;GETEDUCATION irn;Education=RESULT;IF Education ~="" THEN Fdata=Fdata||'Education : 'Education'
'LF;END;IF Rel=1 THEN;DO;GETRELIGION irn;Religion=RESULT;IF Religion ~="" THEN Fdata=Fdata||'Religion : 'Religion'
'LF;END;IF Diedof=1 THEN;DO;GETDIEDOF irn;Diedfrom=RESULT;IF Diedfrom ~="" THEN Fdata=Fdata||'Died of : 'Diedfrom'
'LF;END;IF Pcomm=1 THEN;DO;GETPERSCOMMENT irn;Pcomment=RESULT;IF Pcomment ~="" THEN Fdata=Fdata||'Comments : 'Pcomment'
'LF;END;IF Pref=1 THEN;DO;GETPERSREFS irn;Preferences=RESULT;IF Preferences ~="" THEN Fdata=Fdata||'References : 'Preferences'
'LF;END;WRITELN(''||File||'',Fdata);Fdata='';GETFATHER irn;Father=RESULT;IF Father ~="" THEN;DO;GETFIRSTNAME Father;Ffirst=RESULT;GETLASTNAME Father;Flast=RESULT;Fpage='I'||Father||'.'||Ext;END;GETMOTHER irn;Mother=RESULT;IF Mother ~="" THEN;DO;GETFIRSTNAME Mother;Mfirst=RESULT;GETLASTNAME Mother;Mlast=RESULT;Mpage='I'||Mother||'.'||Ext;END;IF Father ~=0 THEN Fdata=Fdata||'Father :'||Ffirst' 'Flast||'
'LF;IF Mother ~=0 THEN Fdata=Fdata||'Mother :'||Mfirst' 'Mlast||'
'LF;WRITELN(''||File||'',Fdata);Fdata='';GETNUMSIB irn;Numsib=RESULT;IF Numsib ~=0 THEN WRITELN(''||File||'','Siblings : 'Numsib' Recorded
');IF Pnotes ~=0 THEN;DO;Ufile='PN'||irn||'.'||Dbname;Ntitle=Firstname Lastname '- Personal Notes';CALL NOTES;END;GETNUMMARRY irn;Nummarry=RESULT;IF Nummarry>0 THEN;DO;Fdata='
'LF'

Marriages Recorded = 'Nummarry||'

'LF'
'LF;WRITELN(''||File||'',Fdata);DO mid=0 TO Nummarry-1;GETMARRIAGE irn mid;fgrn=RESULT;GETSPOUSE fgrn;spn=RESULT;IF spn=irn THEN;DO;GETPRINCIPAL fgrn;spn=RESULT;END;GETLASTNAME spn;lspn=RESULT;GETFIRSTNAME spn;fspn=RESULT;GETMARRYDATE fgrn;mdate=RESULT;Fdata='
'LF'Marriage ' mid+1 ' : ';Fdata=Fdata||' '||fspn' '||lspn||'
'LF'
'LF;WRITELN(''||File||'',Fdata);Fdata="";IF Engdate=1 THEN;DO;GETENGAGEDATE fgrn;Engagedate=RESULT;IF Engagedate ~="" THEN Fdata=Fdata||'Engagement : 'Engagedate'
'LF;END;IF Engplace=1 THEN;DO;GETENGAGEPLACE fgrn;Engageplace=RESULT;IF Engageplace ~="" THEN Fdata=Fdata||'Engagement Place : 'Engageplace'
'LF;END;IF mdate ~="" THEN Fdata=Fdata||'Marriage Date : 'mdate'
'LF;IF Marplace=1 THEN;DO;GETMARRYPLACE fgrn;mplc=RESULT;IF mplc ~="" THEN Fdata=Fdata||'Marriage Place : 'mplc'
'LF;END;IF Marendate=1 THEN;DO;GETENDDATE fgrn;Menddate=RESULT;IF Menddate ~="" THEN Fdata=Fdata||'End Date : 'Menddate'
'LF;END;IF Mendplace=1 THEN;DO;GETENDPLACE fgrn;pend=RESULT;IF pend ~="" THEN Fdata=Fdata||'End Place : 'pend'
'LF;END;IF Endmar=1 THEN;DO;GETENDING fgrn;mend=RESULT;SELECT;WHEN mend=2 THEN endm='Divorce';WHEN mend=3 THEN endm='Separation';WHEN mend=4 THEN endm='Annulment';WHEN mend=5 THEN endm='Death';OTHERWISE endm="";END;IF endm ~="" THEN Fdata=Fdata||'End Reason : 'endm'
'LF;END;WRITELN(''||File||'',Fdata);Fdata="";IF Cele=1 THEN;DO;GETCELEBRANT fgrn;Celebrant=RESULT;IF Celebrant ~="" THEN Fdata=Fdata||'Celebrant : 'Celebrant'
'LF;END;IF Wit=1 THEN;DO;GETWITNESS fgrn;Witness=RESULT;IF Witness ~="" THEN Fdata=Fdata||'Witness : 'Witness'
'LF;END;IF Fcomm=1 THEN;DO;GETFAMCOMMENT fgrn;Fcomment=RESULT;IF Fcomment ~="" THEN Fdata=Fdata||'Comment : 'Fcomment'
'LF;END;IF Fref=1 THEN;DO;GETFAMREFS fgrn;Freference=RESULT;IF Freference ~="" THEN Fdata=Fdata||'Reference : 'Freference'
'LF;END;WRITELN(''||File||'',Fdata);GETNUMCHILD fgrn;numc=RESULT;IF numc>0 THEN;DO cnum=0 TO numc-1;GETCHILD fgrn cnum;Child=RESULT;GETFIRSTNAME Child;Fchild=RESULT;GETLASTNAME Child;Lchild=RESULT;Childpage='I'||Child||'.'||Ext;Fdata='Child 'cnum+1' :'||Fchild Lchild||'
'LF;WRITELN(''||File||'',Fdata);Fdata="";END;IF Pnotes ~=0 THEN;DO;Ufile='FN'||fgrn||'.'||Dbname;Ntitle=Firstname Lastname 'and' fspn lspn '- Family Notes';CALL NOTES;END;END;END;Ufile='postpage.txt';CALL USERTEXT;WRITELN(''||File||'','
'LF'
');CALL PAGEEND;CLOSE('idhtml');SAY VT VT;END;SAY 'ALL Pages Complete'LF;RETURN;TOOLTYPES:;Realname=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',REAL_NAME);IF Realname="" THEN Realname='Unknown User';Mailto=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',EMAIL);IF Mailto="" THEN Mailto='No.Mail.Wanted';Public=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',HOME_URL);IF Public="" THEN Public='http://Please.Include.URL';Homepage=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',HOME_PAGE);IF Homepage="" THEN Homepage='HomePage';Fnotes=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',FAMILY_NOTES);IF Fnotes="" THEN Fnotes=0;Pnotes=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',PERSONAL_NOTES);IF Pnotes="" THEN Pnotes=0;Ext=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',FILE_EXTENSION);IF Ext="" THEN Ext='html';Gdx=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',MAKE_GENDEX);IF Gdx ~=1 THEN Gdx=0;Bgcolor=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',BACKGROUND_COLOR);IF Bgcolor="" THEN Bgcolor="";Text=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',TEXT_COLOR);IF Text="" THEN Text="";Link=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',LINK);IF Link="" THEN Link="";Vlink=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',VLINK);IF Vlink="" THEN Vlink="";Alink=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',ALINK);IF Alink="" THEN Alink="";Background=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',BACKGROUND_IMAGE);IF Background="" THEN Background="";Topbgcolor=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',TOP_BACKGROUND_COLOR);IF Topbgcolor="" THEN Topbgcolor="";Toptext=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',TOP_TEXT_COLOR);IF Toptext="" THEN Toptext="";Toplink=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',TOP_LINK);IF Toplink="" THEN Toplink="";Topvlink=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',TOP_VLINK);IF Topvlink="" THEN Topvlink="";Topalink=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',TOP_ALINK);IF Topalink="" THEN Topalink="";Topbackground=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',TOP_BACKGROUND_IMAGE);IF Topbackground="" THEN Topbackground="";Quickbgcolor=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',QUICK_BACKGROUND_COLOR);IF Quickbgcolor="" THEN Quickbgcolor="";Quicktext=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',QUICK_TEXT_COLOR);IF Quicktext="" THEN Quicktext="";Quicklink=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',QUICK_LINK);IF Quicklink="" THEN Quicklink="";Quickvlink=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',QUICK_VLINK);IF Quickvlink="" THEN Quickvlink="";Quickalink=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',QUICK_ALINK);IF Quickalink="" THEN Quickalink="";Quickbackground=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',QUICK_BACKGROUND_IMAGE);IF Quickbackground="" THEN Quickbackground="";Indibgcolor=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',INDI_BACKGROUND_COLOR);IF Indibgcolor="" THEN Indibgcolor="";Inditext=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',INDI_TEXT_COLOR);IF Inditext="" THEN Inditext="";Indilink=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',INDI_LINK);IF Indilink="" THEN Indilink="";Indivlink=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',INDI_VLINK);IF Indivlink="" THEN Indivlink="";Indialink=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',INDI_ALINK);IF Indialink="" THEN Indialink="";Indibackground=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',INDI_BACKGROUND_IMAGE);IF Indibackground="" THEN Indibackground="";Alphabgcolor=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',ALPHA_BACKGROUND_COLOR);IF Alphabgcolor="" THEN Alphabgcolor="";Alphatext=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',ALPHA_TEXT_COLOR);IF Alphatext="" THEN Alphatext="";Alphalink=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',ALPHA_LINK);IF Alphalink="" THEN Alphalink="";Alphavlink=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',ALPHA_VLINK);IF Alphavlink="" THEN Alphavlink="";Alphaalink=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',ALPHA_ALINK);IF Alphaalink="" THEN Alphaalink="";Alphabackground=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',ALPHA_BACKGROUND_IMAGE);IF Alphabackground="" THEN Alphabackground="";Introbgcolor=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',INTRO_BACKGROUND_COLOR);IF Introbgcolor="" THEN Introbgcolor="";Introtext=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',INTRO_TEXT_COLOR);IF Introtext="" THEN Introtext="";Introlink=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',INTRO_LINK);IF Introlink="" THEN Introlink="";Introvlink=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',INTRO_VLINK);IF Introvlink="" THEN Introvlink="";Introalink=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',INTRO_ALINK);IF Introalink="" THEN Introalink="";Introbackground=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',INTRO_BACKGROUND_IMAGE);IF Introbackground="" THEN Introbackground="";Birplace=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',BIRTH_PLACE);IF Birplace ~=1 THEN Birplace=0;Bap=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',BAPTISM_DATE);IF Bap ~=1 THEN Bap=0;Baplace=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',BAPTISM_PLACE);IF Baplace ~=1 THEN Baplace=0;Ddate=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',DEATH_DATE);IF Ddate ~=1 THEN Ddate=0;Dplace=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',DEATH_PLACE);IF Dplace ~=1 THEN Dplace=0;Burdate=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',BURIAL_DATE);IF Burdate ~=1 THEN Burdate=0;Burplace=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',BURIAL_PLACE);IF Burplace ~=1 THEN Burplace=0;Occ=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',OCCUPATION);IF Occ ~=1 THEN Occ=0;Edu=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',EDUCATION);IF Edu ~=1 THEN Edu=0;Rel=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',RELIGION);IF Rel ~=1 THEN Rel=0;Diedof=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',DIED_OF);IF Diedof ~=1 THEN Diedof=0;Pcomm=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',PERSONAL_COMMENT);IF Pcomm ~=1 THEN Pcomm=0;Pref=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',PERSONAL_REFERENCES);IF Pref ~=1 THEN Pref=0;Engdate=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',ENGAGEMENT_DATE);IF Engdate ~=1 THEN Engdate=0;Engplace=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',ENGAGEMENT_PLACE);IF Engplace ~=1 THEN Engplace=0;Marplace=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',MARRIAGE_PLACE);IF Marplace ~=1 THEN Marplace=0;Marendate=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',MARRIAGE_END_DATE);IF Marendate ~=1 THEN Marendate=0;Mendplace=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',MARRIAGE_END_PLACE);IF Mendplace ~=1 THEN Mendplace=0;Cele=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',CELEBRANT);IF Cele ~=1 THEN Cele=0;Wit=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',WITNESS);IF Wit ~=1 THEN Wit=0;Fcomm=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',FAMILY_COMMENT);IF Fcomm ~=1 THEN Fcomm=0;Fref=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',FAMILY_REFERENCES);IF Fref ~=1 THEN Fref=0;Endmar=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',MARRIAGE_END_REASON);IF Endmar ~=1 THEN Endmar=0;Metakey=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',META_KEY_WORDS);IF Metakey ~=1 THEN Metakey=0;Noframes=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',INCLUDE_NOFRAMES);IF Noframes ~=1 THEN Noframes=0;view=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',VIEW);IF view ~=1 THEN view=0;Bpages=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',BIG_PAGES);IF Bpages ~=1 THEN Bpages=0;GendexPath=RXTR_GETTOOLTYPEVALUE(Pname||'.rexx',PAGES_OUT_PATH);IF ~EXISTS(GendexPath) THEN CALL REQDIR;IF GendexPath="" THEN;REQDIR:;DO;C=RTFILEREQUEST(,,'Select Output Path','_Select','rtfi_flags=freqf_nofiles',test);GendexPath=C;END;RETURN;NOTES:;IF EXISTS(''||dbpath||Ufile||'') THEN;DO;WRITELN(''||File||'','

'||Ntitle||'

');IF ~OPEN('inf',''||dbpath||Ufile||'','R') THEN;SAY LF' Unable to open file : 'Ufile LF;ELSE;DO UNTIL EOF('inf');Fdata=READLN('inf');IF LENGTH(Fdata)<1 THEN Fdata=Fdata'
';WRITELN(''||File||'',Fdata);END;Close('inf');END;Ufile="";Ntitle="";RETURN;COLORSET:;Fdata=' 'LF;WRITELN(''||File||'',Fdata);RETURN;TOPCOL:;IF Topbgcolor ~="" THEN Fdata=Fdata||'bgcolor="'||Topbgcolor||'" ';IF Toptext ~="" THEN Fdata=Fdata||'text="'||Toptext||'" ';IF Toplink ~="" THEN Fdata=Fdata||'link="'||Toplink||'" ';IF Topvlink ~="" THEN Fdata=Fdata||'vlink="'||Topvlink||'" ';IF Topalink ~="" THEN Fdata=Fdata||'alink="'||Topalink||'" ';IF Topbackground ~="" THEN Fdata=Fdata||'background="'||Topbackground||'" ';RETURN;QUICKCOL:;IF Quickbgcolor ~="" THEN Fdata=Fdata||'bgcolor="'||Quickbgcolor||'" ';IF Quicktext ~="" THEN Fdata=Fdata||'text="'||Quicktext||'" ';IF Quicklink ~="" THEN Fdata=Fdata||'link="'||Quicklink||'" ';IF Quickvlink ~="" THEN Fdata=Fdata||'vlink="'||Quickvlink||'" ';IF Quickalink ~="" THEN Fdata=Fdata||'alink="'||Quickalink||'" ';IF Quickbackground ~="" THEN Fdata=Fdata||'background="'||Quickbackground||'" ';RETURN;INDICOL:;IF Indibgcolor ~="" THEN Fdata=Fdata||'bgcolor="'||Indibgcolor||'" ';IF Inditext ~="" THEN Fdata=Fdata||'text="'||Inditext||'" ';IF Indilink ~="" THEN Fdata=Fdata||'link="'||Indilink||'" ';IF Indivlink ~="" THEN Fdata=Fdata||'vlink="'||Indivlink||'" ';IF Indialink ~="" THEN Fdata=Fdata||'alink="'||Indialink||'" ';IF Indibackground ~="" THEN Fdata=Fdata||'background="'||Indibackground||'" ';RETURN;ALPHACOL:;IF Alphabgcolor ~="" THEN Fdata=Fdata||'bgcolor="'||Alphabgcolor||'" ';IF Alphatext ~="" THEN Fdata=Fdata||'text="'||Alphatext||'" ';IF Alphalink ~="" THEN Fdata=Fdata||'link="'||Alphalink||'" ';IF Alphavlink ~="" THEN Fdata=Fdata||'vlink="'||Alphavlink||'" ';IF Alphaalink ~="" THEN Fdata=Fdata||'alink="'||Alphaalink||'" ';IF Alphabackground ~="" THEN Fdata=Fdata||'background="'||Alphabackground||'" ';RETURN;INTROCOL:;IF Introbgcolor ~="" THEN Fdata=Fdata||'bgcolor="'||Introbgcolor||'" ';IF Introtext ~="" THEN Fdata=Fdata||'text="'||Introtext||'" ';IF Introlink ~="" THEN Fdata=Fdata||'link="'||Introlink||'" ';IF Introvlink ~="" THEN Fdata=Fdata||'vlink="'||Introvlink||'" ';IF Introalink ~="" THEN Fdata=Fdata||'alink="'||Introalink||'" ';IF Introbackground ~="" THEN Fdata=Fdata||'background="'||Introbackground||'" ';RETURN;BREAK_C:;Rtext='You pressed CTRL-C'LF LF'Thank you for Using 'Pname Version Lic;enum=32;CALL RERROR;RETURN;RERROR:;Title=Pname Version;Ir=RTEZREQUEST(Rtext,'_OK',Title," rtez_flags = ezreqf_centertext rt_reqpos = reqpos_centerscr");IF enum>0 THEN EXIT(enum);RETURN;WELCOME:;Rtext=Pname Version Lic LF;Rtext=Rtext||'Please register with.'LF;Rtext=Rtext||Owner Address LF;Rtext=Rtext||'Updates are available at'LF LF;Rtext=Rtext||'http://'||Shome||'amibin/'LF LF;Rtext=Rtext||'The current Database name is 'dbname LF;enum=0;CALL RERROR;RETURN;THANKYOU:;Rtext='Thank you for using 'Pname Version LF;enum=0;CALL RERROR;RETURN;IOERR:;Rtext='THERE WAS AN IO ERROR';enum=33;CALL RERROR;RETURN;VOYAGERVIEW:;ADDRESS VALUE "VOYAGER";OPENURL 'file:///'||GendexPath||'index.'||Ext;ADDRESS VALUE "SCIONGEN";RETURN;BIGPAGES:;say 'Building Big Pages';say 'This could take a while';File='bhtml';Idpage='';DO id=1 TO List.0;num=id+1;nmm=id-1;pre=LEFT(List.id,1);tst=LEFT(List.num,1);lsf=WORD(List.id,1);lst=WORD(List.num,1);lpr=WORD(List.nmm,1);irn=WORD(List.id,3);Mdata="";Marry=0;Idpage=pre||'ind.'||Ext;IF ~OPEN(''||File||'',''||GendexPath||''||Idpage||'','A') THEN;DO;IF ~OPEN(''||File||'',''||GendexPath||''||Idpage||'','W') THEN;DO;SAY 'UNABLE TO CREATE 'Idpage;EXIT;END;END;IF SEEK(''||File||'',0,'E')=0 THEN;DO;htitle= dbname||' - '||pre||' Index Page';CALL HEADDERTEXT;Mycol='Alpha';CALL COLORSET;Fdata='

'||pre||' - Index Page

'LF;Fdata=Fdata||'
Created '||DATE('N')||' by '||Realname||'
'LF;WRITELN(''||File||'',Fdata);END;GETLASTNAME irn;Last=RESULT;Last=TRANSLATE(Last,"_"," ");IF Last='' THEN Last='UNKNOWN';IF Last ~=lpr THEN WRITELN(''||File||'','
'LF''LF'

'||TRANSLATE(Last," ","_")||'

'LF);CALL PAGEDATA;WRITELN(''||File||'',Fdata);IF pre ~=tst THEN;DO;WRITELN(''||File||'','

');Ufile='postindex.txt';CALL USERTEXT;Fdata='
';WRITELN(''||File||'',Fdata);CALL PAGEEND;END;CLOSE('bhtml');END;RETURN;PAGEDATA:;GETFIRSTNAME irn;Firstname=RESULT;IF Firstname='' THEN Firstname='Firstname UNKNOWN';Lastname=TRANSLATE(WORD(List.id,1),"_"," ");IF Lastname='UNKNOWN' THEN Lastname="";GETBIRTHDATE irn;Birthdate=RESULT;IF Birplace=1 THEN;DO;GETBIRTHPLACE irn;Birthplace=RESULT;END;ELSE Birthplace="";IF Bap=1 THEN;DO;GETBAPTISMDATE irn;Baptism=RESULT;END;ELSE Baptism="";IF Baplace=1 THEN;DO;GETBAPTISMPLACE irn;Baptismplace=RESULT;END;ELSE Baptismplace="";IF Ddate=1 THEN;DO;GETDEATHDATE irn;Deathdate=RESULT;END;ELSE Deathdate="";IF Burdate=1 THEN;DO;GETBURIALDATE irn;Burialdate=RESULT;END;ELSE Burialdate="";IF Burplace=1 THEN;DO;GETBURIALPLACE irn;Burialplace=RESULT;END;ELSE Burialplace="";IF Dplace=1 THEN;DO;GETDEATHPLACE irn;Deathplace=RESULT;END;ELSE Deathplace="";IF Occ=1 THEN;DO;GETOCCUPATION irn;Occupation=RESULT;END;ELSE Occupation="";IF Edu=1 THEN;DO;GETEDUCATION irn;Education=RESULT;END;ELSE Education="";IF Rel=1 THEN;DO;GETRELIGION irn;Religion=RESULT;END;ELSE Religion="";IF Diedof=1 THEN;DO;GETDIEDOF irn;Diedfrom=RESULT;END;ELSE Diedfrom="";IF Pcomm=1 THEN;DO;GETPERSCOMMENT irn;Pcomment=RESULT;END;ELSE Pcomment="";IF Pref=1 THEN;DO;GETPERSREFS irn;Preferences=RESULT;END;ELSE Preferences="";GETFATHER irn;Father=RESULT;IF Father ~="" THEN;DO;GETFIRSTNAME Father;Ffirst=RESULT;GETLASTNAME Father;Flast=RESULT;Fpage='#'||Father;END;GETMOTHER irn;Mother=RESULT;IF Mother ~="" THEN;DO;GETFIRSTNAME Mother;Mfirst=RESULT;GETLASTNAME Mother;Mlast=RESULT;Mpage='#'||Mother;END;GETNUMSIB irn;Numsib=RESULT;Fdata='
'LF;IF Lastname='UNKNOWN' THEN Lastname="";Fdata=Fdata||'

'||Firstname TRANSLATE(Lastname," ","_")||'

'LF'
'LF'
'LF;IF Father ~=0 THEN;DO;IF LEFT(Flast,1)=LEFT(Lastname,1) THEN dataf=fpage;ELSE dataf=LEFT(Flast,1)||'ind.'||Ext||'#'||Father;IF Ffirst||Flast ~="" THEN Fdata=Fdata 'Father : '||Ffirst Flast||'
'LF;END;IF Mother ~=0 THEN;DO;IF LEFT(Mlast,1)=LEFT(Lastname,1) THEN datam=mpage;ELSE datam=LEFT(Mlast,1)||'ind.'||Ext||'#'||Mother;IF Mfirst||Mlast ~="" THEN Fdata=Fdata 'Mother : '||Mfirst Mlast||'
'LF;END;IF Numsib ~=0 THEN Fdata=Fdata 'Siblings : 'Numsib'
'LF;IF Birthdate ~="" THEN Fdata=Fdata 'Birth Date : 'Birthdate '
'LF;IF Birthplace ~="" THEN Fdata=Fdata 'Birth Place : 'Birthplace '
'LF'
'LF;IF Baptism ~="" THEN Fdata=Fdata 'Baptism Date : 'Baptism '
'LF;IF Baptismplace ~="" THEN Fdata=Fdata 'Baptism Place : 'Baptismplace '
'LF;IF Religion ~="" THEN Fdata=Fdata 'Religion : 'Religion '
'LF'
'LF;IF Diedfrom ~="" THEN Fdata=Fdata 'Died of : 'Diedfrom '
'LF;IF Deathdate ~="" THEN Fdata=Fdata 'Death Date : 'Deathdate '
'LF;IF Deathplace ~="" THEN Fdata=Fdata 'Death Place : 'Deathplace '
'LF'
'LF;IF Burialdate ~="" THEN Fdata=Fdata 'Burial Date : 'Burialdate '
'LF;IF Burialplace ~="" THEN Fdata=Fdata 'Burial Place :'Burialplace '
'LF'
'LF;IF Occupation ~="" THEN Fdata=Fdata 'Occupation : 'Occupation '
'LF;IF Education ~="" THEN Fdata=Fdata 'Education : 'Education '
'LF'
'LF;IF Pcomment ~="" THEN Fdata=Fdata 'Comment : 'Pcomment '
'LF;IF Preferences ~="" THEN Fdata=Fdata 'Reference : 'Preferences '
'LF'
'LF;WRITELN(''||File||'',Fdata);Fdata="";IF Pnotes ~=0 THEN;DO;Ufile='PN'||irn||'.'||Dbname;Ntitle=Firstname Lastname '- Personal Notes';CALL NOTES;END;GETNUMMARRY irn;Nummarry=RESULT;WRITELN(''||File||'',Fdata);IF Nummarry>0 THEN;DO;DO mid=0 TO Nummarry-1;GETMARRIAGE irn mid;fgrn=RESULT;Fdata='Spouse 'mid+1':' LF'
'LF;GETSPOUSE fgrn;spn=RESULT;IF spn=irn THEN;DO;GETPRINCIPAL fgrn;spn=RESULT;END;IF spn ~='' THEN;DO;GETLASTNAME spn;lspn=RESULT;IF lspn="" THEN lspn="UNKNOWN";GETFIRSTNAME spn;fspn=RESULT;IF fspn="" THEN fspn="First Name UNKNOWN";IF LEFT(lspn,1)=LEFT(Lastname,1) THEN datas='#'||spn;ELSE datas=LEFT(lspn,1)||'ind.'||Ext||'#'||spn;IF fspn||lspn ~="" THEN;DO;IF lspn='UNKNOWN' THEN lspn="";Fdata=Fdata ''||fspn lspn||'
'LF;END;END;GETMARRYDATE fgrn;mdate=RESULT;IF mdate ~="" THEN Fdata=Fdata 'Marriage Date : 'mdate '
'LF;IF Engdate=1 THEN;DO;GETENGAGEDATE fgrn;Engagedate=RESULT;IF Engagedate ~="" THEN Fdata=Fdata 'Engagement Date : 'Engagedate '
'LF;END;IF Engplace=1 THEN;DO;GETENGAGEPLACE fgrn;Engageplace=RESULT;IF Engageplace ~="" THEN Fdata=Fdata 'Engagement Place : 'Engageplace '
'LF;END;IF Marplace=1 THEN;DO;GETMARRYPLACE fgrn;mplc=RESULT;IF mplc ~="" THEN Fdata=Fdata 'Marriage Place : 'mplc '
'LF;END;IF Marendate=1 THEN;DO;GETENDDATE fgrn;Menddate=RESULT;IF Menddate ~="" THEN Fdata=Fdata 'End Date : 'Menddate '
'LF;END;IF Mendplace=1 THEN;DO;GETENDPLACE fgrn;pend=RESULT;IF pend ~="" THEN Fdata=Fdata 'End Place : 'pend '
'LF;END;IF Endmar=1 THEN;DO;GETENDING fgrn;mend=RESULT;SELECT;WHEN mend=2 THEN endm='Divorce';WHEN mend=3 THEN endm='Separation';WHEN mend=4 THEN endm='Annulment';WHEN mend=5 THEN endm='Death';OTHERWISE endm="";END;IF endm ~="" THEN Fdata=Fdata 'End Reason : 'endm '
'LF;END;IF Cele=1 THEN;DO;GETCELEBRANT fgrn;Celebrant=RESULT;IF Celebrant ~="" THEN Fdata=Fdata 'Celebrant : 'Celebrant '
'LF;END;IF Wit=1 THEN;DO;GETWITNESS fgrn;Witness=RESULT;IF Witness ~="" THEN Fdata=Fdata 'Witness : 'Witness '
'LF;END;IF Fcomm=1 THEN;DO;GETFAMCOMMENT fgrn;Fcomment=RESULT;IF Fcomment ~="" THEN Fdata=Fdata 'Comment : 'Fcomment '
'LF;END;IF Fref=1 THEN;DO;GETFAMREFS fgrn;Freference=RESULT;IF Freference ~="" THEN Fdata=Fdata 'Reference : 'Freference '
'LF;END;GETNUMCHILD fgrn;numc=RESULT;IF numc>0 THEN Fdata=Fdata '
'LF'
'LF'Children Recorded : 'numc '
'LF'
'LF;WRITELN(''||File||'',Fdata);Fdata="";IF numc>0 THEN;DO cnum=0 TO numc-1;GETCHILD fgrn cnum;Child=RESULT;GETFIRSTNAME Child;Fchild=RESULT;GETLASTNAME Child;Lchild=RESULT;Childpage='#'||Child;IF LEFT(Lchild,1)=LEFT(Lastname,1) THEN dataf=Childpage;ELSE dataf=LEFT(Lchild,1)||'ind.'||Ext||'#'||Child;IF Fchild||Lchild ~="" THEN Fdata=''||Fchild Lchild||'
';WRITELN(''||File||'',Fdata);Fdata="";END;WRITELN(''||File||'','
'LF);IF Pnotes ~=0 THEN;DO;Ufile='FN'||fgrn||'.'||Dbname;Ntitle=Firstname Lastname 'and' fspn lspn '- Family Notes';CALL NOTES;END;END;END;RETURN